//=============================================================================
///	Stream
//=============================================================================

#ifndef	__SSTREAM_H__
#define	__SSTREAM_H__

#include "stype.h"
#include <stdio.h>		// for FILE

#ifdef __cplusplus
extern "C" {
#endif

SExp make_file_stream(FILE* fp, const char* fn);
SExp make_str_stream(const char* str);
int close_stream(SExp strm);

int write_cstr(const char* str, SExp strm);
void write(SExp s, SExp strm, int escape);

SExp read_char(SExp strm);
SExp read_line(SExp strm);
SExp read_all(SExp strm);

int sgetch(SExp strm);
void sungetch(int ch, SExp strm);

#ifdef __cplusplus
} // extern "C"
#endif

#endif
